草庐IT

TypeScript 基础语法

全部标签

ChatGPT 写代码浅尝--“TypeScript 怎么获取上个月的今天”

这是最好的时代,也是最坏的时代,生产力工具的不断进化,作为普通人面临的挑战也越来越巨大。今天有幸使用CHatGPT来编写代码,一起来看看吧,比如她是如何解答“TypeScript怎么获取上个月的今天”这个问题的。Q:TypeScript怎么获取上个月的今天ChatGPT:您可以使用JavaScript中的Date对象来获取上个月的今天。以下是一种获取上个月的今天的TypeScript代码示例:functiongetLastMonthToday():Date{lettoday=newDate();letyear=today.getFullYear();letmonth=today.getMont

javascript - Typescript 中泛型类中 Type 的默认值

我需要根据变量在Typescript泛型类中的类型设置默认值,如下所示classMyClass{myvariable:T//HereIwanttosetthevalueofthisvariable//withthedefaultvalueofthetypepassedin'T'}例如,如果T是数字,那么变量myvariable的默认值应该是“0”,同样对于字符串,它应该是空字符串等等。 最佳答案 您不能这样做,因为T的实际类型只会在运行时才知道。你可以做什么:abstractclassMyClass{myvariable:T;con

javascript - Typescript/JavaScript forEach

我正在做一个关于Typescript的词法范围处理的教程,我遇到了一个我以前从未见过的函数的使用。这看起来像forEach语句中的空函数。在typescript中它看起来像这样:fns.forEach(fn=>fn());在javascript中它看起来像:fns.forEach(function(fn){returnfn();});我从未见过像这样使用的函数。有人可以解释这是如何工作的吗?具体来说,fn=>fn()实际执行的是什么。引用下面的代码,是执行fns.push还是for循环?如果是For循环,则没有对此的引用,那么它是如何知道的?完整代码如下:typescript:varf

javascript - 从 typescript 使用内部 javascript 文件

我的项目中有一个js文件,我需要从ts文件中使用它。js文件路径为“javascript/jsToConsume.js”。ts文件路径为“typescript/client.ts”我在“typings/internal/jsToConsume.d.ts”路径下添加了声明文件,其内容如下:declarenamespacejsToConsume{exportfunctionfunc1():void;}在我的client.ts中,我尝试使用它:///import*asjsToConsumefrom'../javascript/jsToConsume'但是'../javascript/jsTo

javascript - typescript + moment.js : error TS2307: Cannot find module 'moment'

我正在开发一个网络应用程序,使用angular1.5、typescript2.4.0、moment:2.18.1和gulp进行项目组装。这是我的tsconfig.json:{"files":["src/app/main.ts","types/**/*.ts"],"compilerOptions":{"noImplicitAny":false,"target":"es2015","allowSyntheticDefaultImports":true}}在我的date-range-picker.component.ts中。我正在导入时刻库,正如maindocumentation中所建议的那

javascript - 如何在 angular2 typescript 中正确执行 "bind"?

我想使用一个javascript库,它需要像这样创建一个对象并绑定(bind)到它:this.mystr="hello";this.webkitspeech=newwebkitSpeechRecognition();this.webkitspeech.onresult=function(evt){console.log(this.mystr);//thisisundefined,eventhoughIdohaveitdefined}我通常会做一个.bind(this)虽然在typescript中我想这样做:this.mystr="hello"this.webkitspeech=neww

javascript - 为什么 npm react-scripts 在我运行 `npm run start` 时会产生语法错误?

这个问题在这里已经有了答案:SyntaxError:missing)afterargumentlist,Whenusingasync(3个答案)关闭3年前。所以我已经在全栈React应用程序上工作了几个月。出于某种原因,当我尝试在命令行上运行npmrunstart时,似乎不知何故,它产生了以下错误;//npmrunstart>pair@0.1.0start/Users/eden/Documents/GitHub/Pair./pair>react-scriptsstart/Users/eden/Documents/GitHub/Pair./pair/node_modules/react-

javascript创建多维数组语法

这个问题在这里已经有了答案:HowcanIcreateatwodimensionalarrayinJavaScript?(55个答案)HowtocreateamultidimensionalarrayinJavascript?[duplicate](4个答案)关闭9年前。今天听说在js中可以用这种语法创建多维数组:vara=newArray(3,3);a[2][2]=2;alert(a[2][2])但是这在歌剧中不起作用。我哪里错了吗?

javascript - javascript 中的 webkit 转换语法?

我在这里寻找webkitTransition对象引用functionspawnAnimation(what){//setsthemovingelementvarmoveingEl=document.getElementById(what);//givestemptransitionpropertymoveingEl.style.WebkitTransition="left2s";//moveingEl.style.webkitTransition="top500ms";varcLeft=moveingEl.style.leftvarcleft=Number(cLeft.slice(0,

javascript - 为什么简化的 CommonJS Wrapper 语法在我的 Dojo AMD 模块上不起作用?

我开始思考requirejs和新的DojoAMD结构,但我在一些早期测试中遇到了问题:cg/signup.js:define(['dojo/_base/fx','dojo/dom'],function(fx,dom){returnfunction(){this.hidePreloader=function(id){varpreloader=dom.byId(id);fx.fadeOut({node:preloader}).play()}}})这很好用。在主cg.js文件中:require(['dojo/_base/kernel','dojo/_base/loader'])dojo.re